package main

import "fmt"

/*
【1】普通for循环
【2】键值循环
（键值循环） for range结构是Go语言特有的一种的迭代结构，在许多情况下都非常有用，for range 可以遍历数组、切片、字符串、map 及通道，for range 语法上类似于其它语言中的 foreach 语句，一般形式为：
for key, val := range coll {
    ...
}

注意：
（1）coll就是你要的数组
（2）每次遍历得到的索引用key接收，每次遍历得到的索引位置上的值用val
（3）key、value的名字随便起名  k、v   key、value
（4）key、value属于在这个循环中的局部变量
（5）你想忽略某个值：用_就可以了：
*/
func main() {
	//实现的功能：给出五个学生的成绩，求出成绩的总和，平均数：
	//给出五个学生的成绩：--->数组存储：
	//定义一个数组：
	var scores [5]int
	//将成绩存入数组：(循环 + 终端输入)
	for i := 0; i < len(scores); i++ { //i：数组的下标
		fmt.Printf("请录入第个%d学生的成绩", i+1)
		fmt.Scanln(&scores[i])
	}
	//展示一下班级的每个学生的成绩：（数组进行遍历）
	//方式1：普通for循环：
	for i := 0; i < len(scores); i++ {
		fmt.Printf("第%d个学生的成绩为：%d\n", i+1, scores[i])
	}
	fmt.Println("-------------------------------")
	//方式2：for-range循环
	for key, value := range scores {
		fmt.Printf("第%d个学生的成绩为：%d\n", key+1, value)
	}
}
